Portable computing device for wireless communications and method of operation

ABSTRACT

In one embodiment of the present invention, a portable computing device for wireless communications comprises a first network interface for communicating with a public wireless wide area network (WWAN), a second network interface for communicating with a private wireless local area network (WLAN), and a processor executing under control of software instructions, the software instructions defining a gateway protocol, the gateway protocol establishing the portable computing device as an access point within the private WLAN after the wireless presence on the public WWAN is established.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/155,553, filed May 16, 2016 which is a continuation of U.S. patentapplication Ser. No. 12/972,592, filed Dec. 20, 2010, now U.S. Pat. No.9,369,564, issued Jun. 14, 2016, which is a continuation of U.S. patentapplication Ser. No. 10/861,846, filed Jun. 4, 2004, now U.S. Pat. No.7,881,267, issued Feb. 1, 2011, the content of which is herebyincorporated by reference.

FIELD OF THE INVENTION

The present invention is directed to wireless communications.

DESCRIPTION OF RELATED ART

A number of wireless communication protocols enable mobile or portablecomputing devices to conduct network communications. For example,wireless fidelity (“Wi-Fi”) products enable wireless communication,often referred to as wireless local area networks (WLAN), using the IEEE802.11b protocol. The 802.11b protocol defines the physical and mediumaccess control layers of the communication protocol. The physical layerrefers to characteristics associated with the wireless transmission ofdata (i.e., using direct spread spectrum processing, frequency hopping,or infrared (IR) pulse modulation for the 802.11b standard). The mediumaccess control layer refers to the techniques that maintain order withinthe shared communication medium to prevent networked devices frominterfering with each other's communications.

According to the 802.11b communication protocol, two types of wirelesscommunication networks are possible. In the first type, an “ad-hoc”wireless communication network is formed. Specifically, when a number ofwireless-capable devices are within communication range, the wirelesscommunication devices “elect” one of the devices as the base station andthe other devices act as slaves to the base station. The base stationmanages the communication within the wireless network. In the secondtype, an infrastructure model is employed wherein at least one accesspoint is employed. An access point is a fixed wireless capable devicethat is also coupled to a wired network. The wired network may enablecommunication with other resources such as file servers, printers,and/or the like or may enable communication through other largernetworks such as the Internet.

Another wireless communication protocol is the general packet radioservice (GPRS) protocol. Communication using the GPRS protocol occursthrough public wireless cellular systems (e.g., global system for mobile(GSM) communications networks) to provide wireless wide area networks(WWAN). A device that attempts to communicate using the GPRS protocolestablishes its presence within a cell of an appropriate network byregistering with the network through a base station. The base station iscoupled to the cellular infrastructure and routes packets to and fromthe wireless device.

The foregoing WLANs and WWANs provide various different features andadvantages. For example, WLAN interfaces are often relativelyinexpensive and use low power, facilitating their implementation in awide variety of devices, including handheld computers, portablecomputers, printers, dedicated-purpose devices, etcetera. WWANinterfaces provide extended range communication links, such asthroughout a metropolitan area, facilitating access to a large number ofresources and information. Such resources and information areunavailable to users of a WLAN without the use of one of theaforementioned fixed access points employing a wired network connection.

SUMMARY

In one embodiment of the present invention, a portable computing devicefor wireless communications comprises a first network interface forcommunicating with a public wireless wide area network (WWAN), a secondnetwork interface for communicating with a private wireless local areanetwork (WLAN), and a processor executing under control of softwareinstructions, the software instructions defining a gateway protocol, thegateway protocol establishing the portable computing device as an accesspoint within the private WLAN after the wireless presence on the publicWWAN is established.

In another embodiment of the present invention, a method for wirelesscommunications comprises detecting entry into a service area of a publicwireless wide area network (WWAN) by a portable computing device, andestablishing a private wireless local area network (WLAN) by theportable computing device, wherein the portable computing deviceperforms at least one access point service for said private WLAN.

In another embodiment of the present invention, a system for wirelesscommunications comprises, means for registering with a public wirelesswide area network (WWAN) to transmit and receive communication packetsafter detection of entry into a service area of the public WWAN andmeans for establishing access point services for a private wirelesslocal area network (WLAN), wherein the means for establishing operatesin response to the means for registering.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A and 1B depict example portable computing devices according torepresentative embodiments.

FIG. 2 depicts an example communication system according to onerepresentative embodiment.

FIG. 3 depicts an example flowchart for managing wireless communicationsaccording to one representative embodiment.

DETAILED DESCRIPTION

Referring now to the drawings, FIG. 1A depicts portable computing device100 according to representative embodiments. Portable computing device100 includes processor 101, wireless wide area network (WWAN)interface(s) 102, and wireless local area network (WLAN) interface(s)103. Suitable commercially available WWAN interfaces include, but arenot limited to, GPRS interfaces, code division multiple access (CDMA)1×RTT interfaces, CDMA 1×EVDO interfaces, 802.16 (WiMax) interfaces,wireless broadband interfaces, and the like. Suitable commerciallyavailable WLAN interfaces include, but are not limited to, 802.11binterfaces, 802.11a interfaces, 802.11g interfaces. For the purposes ofthe following description, the term WLAN is also used to refer to othercommunication mechanisms possessing limited communication ranges, e.g.,personal area Bluetooth networks, personal area Ultra Wideband (UWB)networks, and/or the like.

Portable computing device 100 may be implemented in the form of apersonal digital assistant (PDA), a notebook computer, or other portablecomputing platform. Suitable commercially available PDAs that compriseWWAN and WLAN interfaces include iPAQ™ Pocket PCs available fromHewlett-Packard Company, without implementation embodiments of thepresent invention such PDAs do not provide connectivity between the WWANand WLAN interfaces. Alternatively, cellular telephones or otherwireless devices that include appropriate processing capabilities andwireless interfaces may be used to implement representative embodiments.

Processor 101 operates under the control of executable instructions orcode. The executable instructions or code may be stored in non-volatilememory 104 which is any suitable computer-readable medium. For example,gateway and related communication protocols 105 are stored innon-volatile memory 104. When portable computing device 100 is initiallylocated within a cell or service area of a WWAN, portable computingdevice 100, under the control of protocols 105, attempts to establish apresence in the WWAN. The establishment of a presence within the WWANmay include detecting a digital control channel associated with theWWAN. The digital control channel enables portable computing device 100to communicate with a base station associated with the cell or servicearea. By communicating with the base station, portable computing device100 registers with routing services of the WWAN. For example, portablecomputing device 100 registers its location with a visiting locationregistry and/or a home location register to facilitate the routing ofpackets to portable computing device 100 according to the mobileInternet Protocol as an example. After registering its location withinthe WWAN, portable computing device 100 may communicate with variousresources via the Internet using the GPRS functionality of the WWAN.

After portable computing device 100 establishes a presence within aWWAN, portable computing device 100, under the control of protocols 105,establishes a WLAN. In one embodiment, portable computing device 100establishes itself as an “access point” according to the 802.11bstandard. Portable computing device 100 may access a cache of permitteddevice identifiers 106 to limit access to the established WLAN.Furthermore, portable computing device 100 provides gatewayfunctionality to other wireless communication devices within theestablished WLAN. Specifically, portable computing device 100 receivespackets from the wireless communication devices in the WLAN and routesthe packets to resources available via the Internet using the WWAN.Portable computing device 100 provides other communication functionalityto facilitate the routing of packets such as network address translation(NAT), dynamic host configuration protocol (DHCP), firewallfunctionality, virtual private networking (VPN) functionality, contentfiltering functionality, and/or the like.

Although the functionality of protocols 105 has been described as beingimplemented using software instructions executed by processor 101, otherembodiments may employ other implementations. For example, a suitableapplication specific integrated circuit (ASIC) or circuits (shown asASIC 107 in FIG. 1B) may be used to implement protocols 105 according toone representative embodiment. Also, although embodiments are describedas using a single WLAN network, protocols 105 may control multiple WLANinterfaces 102 simultaneously. For example, protocols 105 may establisha Bluetooth WLAN and a 802.11b WLAN operating in the same local area.

FIG. 2 depicts communication system 200 according to one representativeembodiment. Communication system 200 comprises portable computing device100. Portable computing device 100 is established within a cell orservice area of WWAN 202. Portable computing device 100 communicateswith resources on the Internet using WWAN infrastructure 204.

Portable computing device 100 acts as an access point for WLAN 201 tothereby provide an access point that is neither fixed in location (i.e.,is portable) nor relies on wireline links for wide area communications.Furthermore, portable computing device 100 may authenticate or otherwiselimit which devices may communicate within WLAN 201 to establish aprivate network. Wireless devices 203 within WLAN 201 may be implementedusing a variety of computing devices such as desktop computers, laptopcomputers, personal digital assistants, and/or the like. Wirelessdevices 203 may include integrated WLAN interfaces or removable WLANcards. Wireless devices 203 may communicate with resources available onthe Internet by routing packets through portable computing device 100.Wireless devices 203 may communicate with each other using the wirelessmanagement functionality of portable computing device 100.Alternatively, wireless devices 203 may communicate with sharedresources (e.g., printer 205) using the wireless managementfunctionality of portable computing device 100.

FIG. 3 depicts a flowchart for managing wireless communicationsaccording to one representative embodiment by establishing a gatewayprotocol useful in facilitating WWAN connectivity with respect to a WLANimplementation. In block 301, a WWAN network is detected by mobilecomputing device 100. For example, mobile computing device 100 detectsthe digital control channel of a GSM cellular network or other networkcontrol channel. In block 302, mobile computing device 100 authenticatesand registers with the WWAN network. The authentication may occur bycommunicating an electronic serial number, mobile serial number,challenge and response packets, and/or the like. After authenticationand registration, mobile computing device 100 is established within theWWAN and is ready to communicate packets. Accordingly, the illustratedembodiment provides autonomous data interfacing with the WWAN whendetected, or as otherwise desired by a user, thereby establishing awireless presence on the WWAN.

In block 303, a private WLAN is established by mobile computing device100. For example, mobile computing device 100 may begin broadcasting abeacon frame. In the 802.11b standard, the beacon frame enables wirelesscommunication devices to locate and join a “basic services set” or (aset of devices communicating according to the wireless protocol).Additionally, mobile computing device 100 may respond to “probe request”frames according to the 802.11b standard. The probe request enableswireless communication devices to identify an access point associatedwith an infrastructure basic service set. Probe requests are employed toenable a wireless device to join an infrastructure basic services set ina more efficient manner than waiting for the transmission of a beaconframe.

In block 304, a request, such as may include an identifier of arequesting wireless device, is received by mobile computing device 100from a wireless device to join the WLAN. In block 305, at least oneauthentication frame is communicated between mobile computing device 100and the requesting wireless device. In the 802.11b standard,authentication is performed using a multi-frame exchange using anauthentication algorithm number, authentication transaction sequencenumber, a status code, and challenge text. In block 306, a logicaldetermination is made to determine whether the requesting wirelessdevice is identified within permitted device identifiers 106, such as bycomparing an identifier of a requesting wireless device with identifiersstored in a memory of mobile computing device 100. If not, the wirelessdevice is not allowed to join the WLAN and the process flow returns toblock 304 to receive further requests. If the wireless device isidentified within permitted device identifiers 106, the process flowproceeds to block 307 where the requesting wireless device is allowed tojoin the WLAN.

In block 308, Internet Protocol (IP) packet communication for thewireless device is enabled. For example, after joining the WLAN, thewireless device may broadcast a DHCP discovery packet. Protocols 105 ofmobile computing device 100 may comprise a DHCP server that responds tobroadcast discovery packets. Specifically, the DHCP server “leases” anIP address to the wireless device to enable packet communication. Usingthe assigned IP address, mobile computing device 100 routes packets toand from Internet resources for the wireless communication device and/orother devices of the WLAN using the WWAN, thereby providing gatewayfunctionality such that mobile computing device 100 is established as anaccess point on said WLAN after a wireless presence on the WWAN isestablished. Mobile computing device 100 may perform other functionalitysuch as network address translation, firewall filtering, virtual privatenetworking, content filtering, and/or the like.

One or more of the foregoing functions may be performed in an orderdifferent than that set forth with respect to the embodiment of FIG. 3described above. For example, one or more functions may be performedsimultaneously, such as to provide a desired level of reliability and/orresponsiveness, according to embodiments of the invention.

Representative embodiments may be used for a variety of applications.For example, portable computing device 100 may be used by groups ofprofessionals that perform services in remote locations. For example,mobile accounting teams frequently set up temporary offices infacilities belonging to their clients. Mobile computing device 100 maybe used by such teams to establish a local area network for the teammembers at client facilities. Moreover, mobile computing device 100 maybe used by the teams to communicate with servers associated with themain office of the mobile teams. Representative embodiments offer anumber of advantages in this type of situation. By employingrepresentative embodiments, the local area network can be set up andremoved in an efficient manner without employing wired technology.Additionally, every device belonging to the team members does notnecessarily possess the hardware used for WWAN communication. Byproviding the WWAN functionality within a limited number of mobilecomputing devices 100, management of user accounts associated with thepublic wireless network may be managed in an efficient manner.

What is claimed is:
 1. A portable device, comprising: a processor; and amemory storing software instructions to, when executed by the processor:establish a first connection to a public wireless network; establish theportable device as an access point for a private wireless network; inresponse to an authorization of a remote device to join the privatewireless network, establish a second connection to the remote device,the authorization of the remote device based on a list of deviceidentifiers stored in the memory; and route communication packetsbetween the remote device and the public wireless network using thefirst connection and the second connection.
 2. The portable device ofclaim 1, wherein the software instructions are to: establish theportable device as the access point responsive to an establishment ofthe first connection.
 3. The portable device of claim 1, furthercomprising a first network interface, wherein the first connection isestablished using the first network interface.
 4. The portable device ofclaim 1, further comprising a second network interface, wherein thesecond connection is established using the second network interface. 5.The portable device of claim 1, wherein the first connection and thesecond connection are maintained while the communication packets arerouted.
 6. The portable device of claim 1, wherein the softwareinstructions are to: authorize the remote device by comparing a uniquedevice identifier of the remote device to the list of device identifiersstored in the memory of the portable device.
 7. The portable device ofclaim 1, wherein the software instructions are to establish the firstconnection in response to a determination that the portable device hasentered a service area of the public wireless network.
 8. A method,comprising: establishing, by a portable device, a first connection to apublic wireless network; establishing the portable device as an accesspoint for a private wireless network; authorizing a remote device tojoin the private wireless network based on a list of device identifiersstored in a memory of the portable device; responsive to anauthorization of the remote device to join the private wireless network,establishing a second connection to the remote device; and routingcommunication packets between the remote device and the public wirelessnetwork using the first connection and the second connection.
 9. Themethod of claim 8, further comprising: establishing the portable deviceas the access point responsive to an establishment of the firstconnection.
 10. The method of claim 8, wherein the portable devicecomprises a first network interface and a second network interface,wherein the first connection is established using the first networkinterface, and wherein the second connection is established using thesecond network interface.
 11. The method of claim 8, further comprising:maintaining the first connection and the second connection while routingthe communication packets between the remote device and the publicwireless network.
 12. The method of claim 8, further comprising:authorizing the remote device by comparing a unique device identifier ofthe remote device to the list of device identifiers stored in the memoryof the portable device.
 13. The method of claim 8, further comprising:after establishing the first connection, broadcasting a beacon messagefor other devices.
 14. The method of claim 8, further comprising:establishing the first connection in response to a determination thatthe portable device is located within a service area of the publicwireless network.
 15. An article comprising a non-transitory storagemedium storing software instructions that, when executed by a processorof a portable device, cause the processor to: establish a firstconnection between the portable device and a public wireless network;establish the portable device as an access point for a private wirelessnetwork; in response to an authorization of a remote device to join theprivate wireless network, establish a second connection between theportable device and the remote device, the authorization of the remotedevice based on a list of device identifiers stored in a memory of theremote device; and route communication packets between the remote deviceand the public wireless network using the first connection and thesecond connection.
 16. The article of claim 15, wherein the softwareinstructions are to: authenticate the remote device based on acomparison of a unique device identifier of the remote device to thelist of device identifiers stored in the memory of the portable device.17. The article of claim 15, wherein the software instructions are to:establish the portable device as the access point responsive to anestablishment of the first connection.
 18. The article of claim 15,wherein the portable device comprises a first network interface and asecond network interface, wherein the first connection is establishedusing the first network interface, and wherein the second connection isestablished using the second network interface.
 19. The article of claim15, wherein the first connection and the second connection aremaintained while the communication packets are routed.
 20. The articleof claim 15, wherein the software instructions are to: establish thefirst connection in response to a determination that the portable devicehas entered a service area of the public wireless network.